home *** CD-ROM | disk | FTP | other *** search
/ Dynamic HTML Construction Kit / Dynamic HTML Construction Kit.iso / earthlink / nscomm / java40.jar / java / awt / BorderLayout.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-03  |  3.1 KB  |  176 lines

  1. package java.awt;
  2.  
  3. import java.io.Serializable;
  4.  
  5. public class BorderLayout implements LayoutManager, Serializable {
  6.    int hgap;
  7.    int vgap;
  8.    Component north;
  9.    Component west;
  10.    Component east;
  11.    Component south;
  12.    Component center;
  13.  
  14.    public BorderLayout() {
  15.    }
  16.  
  17.    public BorderLayout(int var1, int var2) {
  18.       this.hgap = var1;
  19.       this.vgap = var2;
  20.    }
  21.  
  22.    public void addLayoutComponent(String var1, Component var2) {
  23.       if ("Center".equals(var1)) {
  24.          this.center = var2;
  25.       } else if ("North".equals(var1)) {
  26.          this.north = var2;
  27.       } else if ("South".equals(var1)) {
  28.          this.south = var2;
  29.       } else if ("East".equals(var1)) {
  30.          this.east = var2;
  31.       } else {
  32.          if ("West".equals(var1)) {
  33.             this.west = var2;
  34.          }
  35.  
  36.       }
  37.    }
  38.  
  39.    public void removeLayoutComponent(Component var1) {
  40.       if (var1 == this.center) {
  41.          this.center = null;
  42.       } else if (var1 == this.north) {
  43.          this.north = null;
  44.       } else if (var1 == this.south) {
  45.          this.south = null;
  46.       } else if (var1 == this.east) {
  47.          this.east = null;
  48.       } else {
  49.          if (var1 == this.west) {
  50.             this.west = null;
  51.          }
  52.  
  53.       }
  54.    }
  55.  
  56.    public Dimension minimumLayoutSize(Container var1) {
  57.       Dimension var2 = new Dimension(0, 0);
  58.       if (this.east != null && this.east.visible) {
  59.          Dimension var3 = this.east.minimumSize();
  60.          var2.width += var3.width + this.hgap;
  61.          var2.height = Math.max(var3.height, var2.height);
  62.       }
  63.  
  64.       if (this.west != null && this.west.visible) {
  65.          Dimension var4 = this.west.minimumSize();
  66.          var2.width += var4.width + this.hgap;
  67.          var2.height = Math.max(var4.height, var2.height);
  68.       }
  69.  
  70.       if (this.center != null && this.center.visible) {
  71.          Dimension var5 = this.center.minimumSize();
  72.          var2.width += var5.width;
  73.          var2.height = Math.max(var5.height, var2.height);
  74.       }
  75.  
  76.       if (this.north != null && this.north.visible) {
  77.          Dimension var6 = this.north.minimumSize();
  78.          var2.width = Math.max(var6.width, var2.width);
  79.          var2.height += var6.height + this.vgap;
  80.       }
  81.  
  82.       if (this.south != null && this.south.visible) {
  83.          Dimension var7 = this.south.minimumSize();
  84.          var2.width = Math.max(var7.width, var2.width);
  85.          var2.height += var7.height + this.vgap;
  86.       }
  87.  
  88.       Insets var8 = var1.insets();
  89.       var2.width += var8.left + var8.right;
  90.       var2.height += var8.top + var8.bottom;
  91.       return var2;
  92.    }
  93.  
  94.    public Dimension preferredLayoutSize(Container var1) {
  95.       Dimension var2 = new Dimension(0, 0);
  96.       if (this.east != null && this.east.visible) {
  97.          Dimension var3 = this.east.preferredSize();
  98.          var2.width += var3.width + this.hgap;
  99.          var2.height = Math.max(var3.height, var2.height);
  100.       }
  101.  
  102.       if (this.west != null && this.west.visible) {
  103.          Dimension var4 = this.west.preferredSize();
  104.          var2.width += var4.width + this.hgap;
  105.          var2.height = Math.max(var4.height, var2.height);
  106.       }
  107.  
  108.       if (this.center != null && this.center.visible) {
  109.          Dimension var5 = this.center.preferredSize();
  110.          var2.width += var5.width;
  111.          var2.height = Math.max(var5.height, var2.height);
  112.       }
  113.  
  114.       if (this.north != null && this.north.visible) {
  115.          Dimension var6 = this.north.preferredSize();
  116.          var2.width = Math.max(var6.width, var2.width);
  117.          var2.height += var6.height + this.vgap;
  118.       }
  119.  
  120.       if (this.south != null && this.south.visible) {
  121.          Dimension var7 = this.south.preferredSize();
  122.          var2.width = Math.max(var7.width, var2.width);
  123.          var2.height += var7.height + this.vgap;
  124.       }
  125.  
  126.       Insets var8 = var1.insets();
  127.       var2.width += var8.left + var8.right;
  128.       var2.height += var8.top + var8.bottom;
  129.       return var2;
  130.    }
  131.  
  132.    public void layoutContainer(Container var1) {
  133.       Insets var2 = var1.insets();
  134.       int var3 = var2.top;
  135.       int var4 = var1.height - var2.bottom;
  136.       int var5 = var2.left;
  137.       int var6 = var1.width - var2.right;
  138.       if (this.north != null && this.north.visible) {
  139.          this.north.resize(var6 - var5, this.north.height);
  140.          Dimension var7 = this.north.preferredSize();
  141.          this.north.reshape(var5, var3, var6 - var5, var7.height);
  142.          var3 += var7.height + this.vgap;
  143.       }
  144.  
  145.       if (this.south != null && this.south.visible) {
  146.          this.south.resize(var6 - var5, this.south.height);
  147.          Dimension var8 = this.south.preferredSize();
  148.          this.south.reshape(var5, var4 - var8.height, var6 - var5, var8.height);
  149.          var4 -= var8.height + this.vgap;
  150.       }
  151.  
  152.       if (this.east != null && this.east.visible) {
  153.          this.east.resize(this.east.width, var4 - var3);
  154.          Dimension var9 = this.east.preferredSize();
  155.          this.east.reshape(var6 - var9.width, var3, var9.width, var4 - var3);
  156.          var6 -= var9.width + this.hgap;
  157.       }
  158.  
  159.       if (this.west != null && this.west.visible) {
  160.          this.west.resize(this.west.width, var4 - var3);
  161.          Dimension var10 = this.west.preferredSize();
  162.          this.west.reshape(var5, var3, var10.width, var4 - var3);
  163.          var5 += var10.width + this.hgap;
  164.       }
  165.  
  166.       if (this.center != null && this.center.visible) {
  167.          this.center.reshape(var5, var3, var6 - var5, var4 - var3);
  168.       }
  169.  
  170.    }
  171.  
  172.    public String toString() {
  173.       return this.getClass().getName() + "[hgap=" + this.hgap + ",vgap=" + this.vgap + "]";
  174.    }
  175. }
  176.